Cable modem analysis system and method therefor for an HFC cable network

ABSTRACT

A modem checker diagnostic toolkit comprises a modem checker client and a modem analysis server. The modem checker client comprises a modem query interface to communicate with the modem analysis server to acquire information indicative of the operational status of a modem and to display the information graphically. A user requests data relating to a particular modem by entering the MAC address of the modem into a query field. The modem checker client interacts with the modem analysis server to acquire information relating to the subscriber associated with the modem MAC address, the services authorized for the modem, and data indicative of the status and performance of the modem. In addition, the modem analysis server interacts with the modem operating system to retrieve modem performance data from modem logs. The modem checker client further provides a link that directs the modem analysis server for remotely resetting the modem regardless of its current status.

BACKGROUND

Embodiments of this invention are generally related to cable networkdiagnostics and more particularly related to obtaining operational andusage data from a cable modem.

In the cable environment, access to the cable network's data service isprovided through a cable modem (CM). Increasingly, CMs are required tocomply with an industry standard referred to as the “Data Over CableService Interface Specification” or DOCSIS. DOCSIS provides a set ofstandards and a certifying authority by which cable companies canachieve cross-platform functionality in Internet delivery. A DOCSIScompliant cable network comprises cable modem termination systems(CMTSs) and cable modems that form the interface to digitalcommunications over the cable network.

A cable modem connected to the cable network is “provisioned” onboot-up. Provisioning involves a process by which the cable modem isinitialized, authenticated, registered, and configured to operate with acable network. Provisioning results in a cable modem being assigned anIP address that is recognized by the cable network and receiving abootfile that, among other functions, determines the services that thesubscriber is entitled to receive.

A cable modem may be standalone device or it may be integrated intoother two-way devices. Its most common application is as an interfacebetween a subscriber's computer and the subscriber's Internet serviceprovider (ISP). The cable modem may also be used in conjunction with aset top box (STB) to provide an upstream digital channel for interactivetelevision and in conjunction with a media terminal adapter (MTA) toprovide voice over Internet protocol (VoIP) services. In these latterapplications, the cable modem is integrated with the device that it issupporting.

Cable modems may also be integrated with wired and wireless routers,thereby allowing multiple devices to share a single cable connection. Acable modem router comprises a basic dynamic host configuration protocol(DHCP) server that assigns private IP addresses to the network devicesconnected to the cable modem/router.

When a problem arises in the provision of a digital cable service, asubscriber expects the cable operator to take quick and effectiveremedial action. From the cable operator's perspective, it is importantto determine whether a problem actually exists, and if so, what thesource of the problem is. Because sending a cable service technician(CST) to the subscriber's location is a costly undertaking, it is alsoimportant to determine whether a fault can be identified and remediedbefore a CST is sent to a subscriber location.

What would be useful is a diagnostic tool for ascertaining theoperational status of a cable modem and for acquiring usage dataremotely from the cable modem.

SUMMARY

In an embodiment of the present invention, a modem checker diagnostictoolkit comprises a modem checker client and a modem analysis server.The modem checker client comprises a modem query interface (herein,“MQI”) to communicate with the modem analysis server to acquireinformation indicative of the operational status of a modem and todisplay the information graphically. In this embodiment, the modemchecker client comprises the MQI, a processor, a display, a user input,and a LAN interface. In another embodiment of the present invention, theprocessor, the display, the user input, and a LAN interface functions ofthe modem checker client are provided by a general purpose computingdevice, the MQI functionality is provided by a Web browser, and themodem analysis server operates a Web server.

A user requests data relating to a particular modem by entering the MACaddress of the modem into a query field. The modem checker clientinteracts with the modem analysis server to acquire information relatingto the subscriber associated with the modem MAC address, the servicesauthorized for the modem, and data indicative of the status andperformance of the modem. By way of illustration and not as alimitation, the modem checker client displays administrative informationcomprising subscriber identifying information and account information.In addition, the modem analysis server interacts with the modemoperating system to retrieve modem performance data from modem logs. Themodem checker client further provides a link that directs the modemanalysis server for remotely resetting the modem regardless of itscurrent status.

The modem checker diagnostic toolkit also displays informationindicative of the operation of the cable modem. By way of illustrationand not as a limitation, such operational information comprises themodem status—whether the modem is online or offline, the firmware usedby the modem, the IP address of the modem, the public IP addressesassigned to the modem and the MAC addresses of the network interfacedevices to which those IP addresses are assigned, and modem signalinformation. Additionally, if the cable modem is integrated with anetwork router, the IP addresses assigned by the router to networkdevices connected to the router. If the router is wireless, the modemchecker diagnostic toolkit will further display wireless networkinformation.

In an exemplary embodiment of the present invention, the modem checkerdiagnostic toolkit comprises a result analyzer that analyzes theoperational information of a cable modem having a status of “off-line”to determine why the cable modem is non-responsive. By way ofillustration and not as a limitation, a modem may be, withoutlimitation, found to be non-responsive because of poor signal levels,unusual wireless configuration settings, out-of-date firmware, and/orproblems with components of the cable network through which the modemcommunicates over the cable network. In another embodiment of thepresent invention, the analytical process takes into account the type ofmodem being polled.

It is therefore an aspect of the present invention to use a modem queryinterface (MQI) to query diverse sources for data relating to a cablemodem.

It is another aspect of the present invention to allow a user tocustomize the MQI by selecting the modem data to be queried anddisplayed.

It is still another aspect of the present invention to permit the MQI tobe operated on portable computing devices.

It is yet another aspect of the present invention to evaluate datarelating to a failed modem, to provide a diagnosis of the possiblecauses for the failure, and to suggest steps to remedy the failure.

These and other aspects of the present invention will become apparentfrom a review of the description that follows.

In an embodiment of the present invention, a cable modem (CM) analysisserver for a hybrid-fiber-coax (HFC) cable network comprises a querylibrary, a query checker processor, and a display server. The querylibrary comprises instructions for acquiring CM state data elementsindicative of the state of a CM that is associated with a CM MACaddress. The query checker processor generates an interactive graphicaldisplay that accepts a query from a modem checker client. In anembodiment of the present invention, the query comprises the CM MACaddress and identifies the queried CM state data elements to be obtainedfor the CM. By way of illustration and not as a limitation, the CM statedata elements are selected from the group consisting of subscriber data,CM operational data, network component data, and CM diagnostic data.

In another embodiment of the present invention, the subscriber datacomprises a subscriber name, a subscriber address, an account numberassociated with the subscriber name, the MAC address of the CM, and thesubscriber account status. In yet another embodiment of the presentinvention, CM operational data comprises a CM current status, a privatenetwork address assigned to the CM, a modem type, available IPaddresses, active IP addresses, a public IP address, a type, a NIC MAC,a status in LDAP, a provisioned BIN FILE, and a hosting ISP. In stillanother embodiment of the present invention, the CM comprises a wirelessrouter and the CM operational data further comprises network addresstranslation (NAT) client data, NAT status, Ethernet connection status,router firmware identifier, wireless system identifier, transmissionchannel, wired equivalency privacy status, and access limits. In anembodiment of the present invention, the network component datacomprises a network router identifier, a network port identifier, thefirmware of the router, a port summary, a port percentage online, a portSNR. In another embodiment of the present invention, the CM diagnosticdata comprises an uptime measure, a transmit signal level, a receivesignal level, and a modem SNR. In this embodiment, the instructions foracquiring CM diagnostic data from the CM are delivered to the CM as SNMPmessages.

The query checker processor executes query instructions from the querylibrary responsive to the queried CM state data elements to obtain thequeried CM state data elements. The display server receives CM statedata elements, creates a CM analytical record, and sends the CManalytical record to a modem checker client for display. In anembodiment of the present invention, the modem checker client comprisesa Web browser and the CM analytical record comprises a Web page.

In another embodiment of the present invention, the CM analysis serverfurther comprises a result analyzer. The result analyzer receives CMstate data elements. The result analyzer determines whether a CM statedata element is within a predetermined range. If the CM state dataelement is within a predetermined range, then the result analyzerassigns a first graphical attribute to the CM state data element. If theCM state data element is outside a predetermined range, the resultanalyzer assigns a second graphical attribute to the CM state dataelement. The result analyzer provides the CM state data element and anassigned graphical attribute to the display server. The display serveruses the CM state data element and the assigned graphical attribute tocreate the analytical record. In an embodiment of the present invention,the first and second graphical attributes are display colors.

In an alternate embodiment of the present invention, the CM analysisserver further comprises a result analyzer. The result analyzer receivesCM state data elements and uses these elements to determine whether a CMstate data element is within a predetermined range. The result analyzerselects CM state elements determined to be outside a predeterminedrange, determines if the selected CM state elements are indicative of acommon fault, and if the selected CM state elements are indicative of acommon fault, identifies the common fault in the analytical record.

In yet another embodiment of the present invention, the CM analysisserver further comprises a client network interface adapted tocommunicate with the CM checker client via a client network. By way ofillustration and not as a limitation, the client network may be, withoutlimitation, a wired network, a wireless network, a local area network,or the Internet.

In another embodiment of the present invention, the CM analysis serverfurther comprises a cable network interface that communicates with theCM via a cable network path. In an embodiment of the present invention,the path in the cable network path is a DOCSIS-compliant channel.

An embodiment of the present invention provides a method for evaluatingthe operational status of a cable modem (CM) in a hybrid-fiber-coax(HFC) cable network. A query is received from a modem checker client.The query comprises a CM MAC address and identifies queried CM statedata elements to be obtained for the CM. Query instructions are accessedfrom a query library responsive to the queried CM state data elementsidentified in the query. The query instructions are executed to obtainthe queried CM state data elements. The CM state data elements arereceived at a display server. A CM analytical record is created and sentto a modem checker client for display.

In another embodiment of the present invention, the queried CM statedata elements are provided to a result analyzer. A determination is madewhether a CM state data element is within a predetermined range. If theCM state data element is within a predetermined range, a first graphicalattribute is assigned to the CM state data element. If the CM state dataelement is outside a predetermined range, a second graphical attributeis assigned to the CM state data element. The CM state data element andan assigned graphical attribute are provided to the display server. Theanalytical record is created using the CM state data element and theassigned graphical attribute.

In an alternate embodiment of the present invention, the queried CMstate data elements are provided to a result analyzer. A determinationis made whether a CM state data element is within a predetermined range.CM state elements determined to be outside a predetermined range areselected. A determination is made whether the selected CM state elementsare indicative of a common fault. If the selected CM state elements areindicative of a common fault, the common fault is identified in the CManalytical record.

DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates the components of a MQI in a cable television systemaccording to an embodiment of the present invention.

FIGS. 2A, 2B and 2C illustrate an interactive graphical display of a MQIaccording to an embodiment of the present invention.

FIG. 3 illustrates a flow of a process by which a modem checker clientis used to troubleshoot a modem according to an embodiment of thepresent invention.

DETAILED DESCRIPTION

The following terms are used in the description that follows. Thedefinitions are provided for clarity of understanding:

CCS - Central control system. CM - Cable modem. A cable modem includes aDOCSIS compliant device that is integrated into another device, such asa set top box, a television, or a DVR. CPE - Customer premisesequipment. HFC - Hybrid-fiber-coax. A network design that employs bothfiber optic and coaxial cables to deliver cable video and data services.IP address - IP address as used herein means a uniquely addressableidentifier associated with network or home equipment. LVP - Label valuepair. As applied to the present application, the “label” is a descriptorof a data element and the “value” represents the value assigned to thedata element for a specified modem. Poll - The verb “poll” means the actof using a utility or command by one network device to request data fromanother network device. SID - A system identifier. SMS - A subscribermanagement system. Two-way Describes the capability of a CPE unit toboth receive signals from a cable headend or data center in thedownstream direction and send signals to the headend or data center inthe upstream direction. UBR - Universal Broadband Router. The UBR is acomponent of the CMTS and directs packets received from a CM accordingto the destination IP address of the packet. VOD - Video on demand. VODis the generic term for a collection of services such as HBO on demand(HOD), movies on demand (MODULATOR) SVOD (subscription video on demand),FOD (free on demand), and other similar services. WEP - Wiredequivalency privacy. A security protocol for wireless local areanetworks.

In an embodiment of the present invention, a modem checker diagnostictoolkit comprises a modem checker client and a modem analysis server.The modem checker client comprises a modem query interface (herein,“MQI”) to communicate with the modem analysis server to acquireinformation indicative of the operational status of a modem and todisplay the information graphically. The modem analysis server comprisesa modem checker query processor, query libraries comprising instructionsfor acquiring subscriber account information and modem performance datafrom modem logs, and a result analyzer comprising routines for analyzingthe cable modem performance data of non-responsive modems.

In this embodiment, the modem checker client comprises the MQI, aprocessor, a display, a user input, and a LAN interface. In anembodiment of the present invention, the processor, the display, theuser input, and a LAN interface functions of the modem checker clientare provided by a general purpose computing device, the MQIfunctionality is provided by a Web browser, and the modem analysisserver operates a Web server.

A user requests data relating to a particular modem by entering the MACaddress of a modem into a query field. The modem checker clientinteracts with the modem analysis server to acquire information relatingto the subscriber associated with the modem MAC address, the servicesauthorized for the modem, and data indicative of the status andperformance of the modem. By way of illustration and not as alimitation, the modem checker client displays administrative informationcomprising subscriber identifying information and account information.In addition, the modem analysis server interacts with the modemoperating system to retrieve performance data from modem logs. The modemchecker client is further adapted for remotely resetting the modemregardless of its current status.

In another embodiment of the present invention, the modem analysisserver retains usage data that may be used to trend modem and networkperformance based upon area of service, equipment type, or customerpremise.

FIG. 1 illustrates the components of a modem checker client and serverin a cable television system according to an embodiment of the presentinvention. Referring to FIG. 1, a modem checker client 100 comprises amodem query interface (“MQI”) 104, a display 108, a user input 110, aprocessor 116 and a LAN interface 120.

In an embodiment of the present invention, the display 108, the userinput 110, processor 116 and LAN interface 120 are provided by a generalpurpose computing device. By way of illustration and not as alimitation, the general purpose computing device may be, withoutlimitation, a laptop computer, a personal digital assistant, or ahandheld computer. In an exemplary embodiment of the present invention,the LAN interface 120 is a wireless interface, LAN 130 comprises awireless interface (not illustrated), and the general purpose computingdevice is a portable computing device. By way of illustration, in anembodiment of the present invention, the portable computing device is anIntermec 6400 Keypad Handheld Computer. As will be appreciated by thoseskilled in the art, other general purpose and portable wirelesscomputing devices may be used to provide the functions of display 108,user input 110, processor 116 and LAN interface 120 without departingfrom the scope of the present invention.

Display 108 may be, without limitation, an LCD, a plasma, or otherdisplay device. Input 110 may be, without limitation, a mouse, a touchpad, a keypad, a key board, a touch-sensitive screen, a voicerecognition system or other input device suitable for the particularcomputing device providing the functions of modem checker client 100.

In an embodiment of the present invention, the functionality of MQI 104is provided by a Web browser.

MQI 104 interacts with modem analysis server 140 via processor 116, LANinterface 120, LAN 130, and LAN interface 135. LAN interface 135 passesmodem queries from modem checker client 100 to modem checker queryprocessor 142 within modem analysis server 140. Modem analysis server140 may be, without limitation, located in a cable network headend, in acable network data center, in a network operations center or othersuitable location determined by the cable network operator. In anembodiment of the present invention, modem checker query processor 142comprises a Web server that provides Web pages to modem checker client100 via MQI 104.

When modem analysis server 140 is first accessed by MQI 104, modemchecker query processor 142 generates an interactive graphical displaythat accepts a modem MAC address. The user enters a modem MAC addresswhich is passed via processor 116, LAN interface 120, LAN 130, to LANinterface 135 within modem analysis server 140. The LAN 130 and itsassociated interfaces, 120 and 135, provide a communication path betweenmodem checker client 100 and modem analysis server 140. As willappreciated by those skilled in the art, LAN 130 may be, withoutlimitation, a wired or wireless network and interfaces 120 and 135 areselected as appropriate to the network type.

Modem checker query processor 142 uses subscriber query library 144 anda central control system (CCS) query library 146 to obtain modem-relatedinformation from datastore 155. By way of illustration and not as alimitation, stored modem-related information comprises subscriberidentifying data, account data, registration data, provisioning data,data associating modem 175 with particular cable network components, anddata indicative of the current state of those cable network componentsto which the modem 175 is associated. These data provide a “picture” ofthe physical location where modem 175 is located in the cable network165, the service level to which the subscriber is entitled, the servicelevel to which the modem 175 has been configured, and the condition ofthe path between the modem 175 and the cable network 165.

While datastore 155 is illustrated as a single entity, stored datarelevant to the status of a modem may be distributed among a number ofdatabases and storage devices. As will be appreciated by those skilledin the art, datastore 155 comprises these databases and storage devices.

Modem checker query processor 142 also uses SNMP query library 148 toobtain diagnostic information directly from modem 175. Diagnosticinformation comprises values indicative of the state of the modem andlogged historical data.

In an embodiment of the present invention, modem analysis server 140further comprises a result analyzer 152 and a display server 154. Resultanalyzer 152 reviews the data acquired from modem query processor 140,determines if any of the values associated with a LVP are outsideexpected limits, and, if so, assigns graphical attributes to any datathat are outside expected limits. By way of illustration and not as alimitation, a graphical attribute may be, without limitation, a displaycolor, a display intensity, an object shape, and a display modulation,such as a blinking or motion. These data are passed to display server154, which returns an interactive graphical display (see, FIG. 2, 200)to modem query interface 104. The content of the interactive graphicaldisplay represents an analytical record of modem 175. Modem queryinterface 104 then causes processor 116 to output the interactivegraphical display to display 108.

In an embodiment of the present invention, cable modem 175 is associatedwith an optional router 190. In this configuration, the IP lease isissued by the cable service operator to optional router 190. Theoptional cable router 190 issues a public IP address lease to CPE 180and performs network address translation (NAT) to route communicationsto CPE 180. Thus, cable modem 175 communicates to CPE 180 throughoptional router 190.

In an embodiment of the present invention, cable modem 175 and optionalrouter 190 are integrated and function as a wireless modem/router. Inthis embodiment, the configuration of both the modem and the router175/190 may be accessed remotely by the cable service operator.

FIGS. 2A, 2B, and 2C illustrate an interactive graphical display of aMQI according to an embodiment of the present invention. Referring toFIG. 2A, an interactive graphical display 200 comprises data blocks forSMS INFORMATION 210, MODEM STATUS 215, PUBLIC IP ADDRESS 220, LDAPINFORMATION 225, NETWORK INFORMATION 230, and SIGNAL INFORMATION 235.Datablocks further comprise label-value pairs (LVPs), where the label isa descriptor of a data element and the value represents the valueassigned to the data element for a specified modem. The data blocks andthe LVPs represent an analytical record of the specified modem.

Referring to FIG. 2B, interactive graphical display 200 furthercomprises data blocks for UPTIME INFORMATION 240, PORT SUMMARY 245, NATCLIENTS 260, and SUBSCRIBER ROUTER INFORMATION 265.

Referring to FIG. 2C, interactive graphical display 200 furthercomprises ACTION BLOCK 270 and data blocks for NETWORK REPORTS 275 andANALYSIS RESULTS 280.

In an embodiment of the present invention, SMS INFORMATION 210 comprisesLVPs “Status in SMS” and “Acct #.” The label “Status” in SMS, has threepossible values: Enabled, Disabled, or Not Found.

-   -   Enabled: the modem is present and enabled on an account in SMS,        and has been assigned codes that allow it to get online.    -   Disabled: the modem is present on an account in SMS, but the        account or the modem (or both) is not enabled.    -   Not Found: The modem is not associated with an account in the        SMS.

The label “Acct #.” has the value of the subscriber account numberassociated with the selected modem.

In an embodiment of the present invention, MODEM STATUS 215 comprisesLVPs “current,” “10NET IP Addr.” and “Modem Type.” The modem status LVPindicates whether the modem is on-line. The label “label “Current” hasfive possible values:

-   -   Online and Verified: The modem is identified as online according        to data in datastore 155 and is responding to SNMP queries. What        this means is that the UBR is saying that the modem is online,        and the modem itself can be reached and is giving live        responses.    -   Online and Unverified: The modem is identified as online        according to data in datastore 155 and, but is not responding to        SNMP Queries. This means that while the UBR says the modem is        online, the modem is not giving live responses.    -   Disabled/Online: The modem is identified as online (disabled)        according to data in datastore 155 and. This status may occur on        new installs when the modem is plugged in before it has been        added to the account or before it has been enabled in SMS. The        modem still reports that it is disabled because it only checks        LDAP when it first boots up.    -   Offline: The modem is identified as offline according to data in        datastore 155 and is not responding to SNMP Queries.    -   Not Found. The modem is not listed on any UBR.

When the modem value of label Current is “on-line,” the 10NET IP addresslabel is assigned the value of the private IP address of the cablenetwork facing interface. Additionally, the value of label Modem Type isassigned an identifier. In an embodiment of the present invention, theidentifier is indicative of the manufacturer of the modem.

In an embodiment of the present invention, PUBLIC IP ADDRESS 220comprises the LVPs “Available,” “Active,” “Public IP Addr.,” “Type,”“NIC MAC,” and “NIC MFR.” The value of the label “Available” representsthe number of public IP addresses available for assignment to CPEconnected to the modem. The value of the label “Active” is the number ofIP addresses used by the subscriber. The value of the label “Public IPAddr.” is the public IP address of the CPE connected to the modem asassigned by the binary file (BIN File) to the modem in LDAP and used toconfigure the modem on bootup. The label “Type” may have a value ofeither static or dynamic. The value associated with the label NIC MAC isthe MAC address of the network interface card of the CPE to which thepublic IP address is assigned (static) or leased (dynamic). The valueassociated with label NIC MFR is the manufacturer of the NIC to whichthe public IP address has been assigned.

Data block PUBLIC IP ADDRESS 220 further comprises an object that whenselected by a user causes MQI 104 to clear the MAC address of modem 175from the UBR. The user can thus determine whether a currently connectedcomputer is requesting an IP address through the modem.

In an embodiment of the present invention, LDAP INFORMATION 225comprises LVPs “Status in LDAP,” “BIN,” and “ISP.”

The value associated with the label “Status in LDAP” assumes the valuesdescribed with respect to the “Status in SMS” label within SMSinformation 210. The label “BIN” receives as its value the file name ofthe binary provisioning file assigned to the modem. The label “CurrentISP” receives as its value the name of the ISP to which the router isassigned.

In an embodiment of the present invention, NETWORK INFORMATION 230comprises the LVPs “router,” “port,” and “firmware.” The value of thelabel “router” is the UBR on which the modem was found. The value of thelabel “port” provides the port number on the UBR on which the modem wasfound. The value of the label “firmware” is either “current” or theactual firmware number of the modem. Clicking on the entry will launch aseparate Firmware Upgrade window.

In an embodiment of the present invention, SIGNAL INFORMATION 235comprises the LVPs “Transmit,” “Receive,” and “Signal/Noise.” As long asthe modem is online and responding, these LVPs will be assigned currentvalues. The label “Transmit” is assigned a value associated with theupstream signal strength measured at the modem. The label “Receive” isassigned a value associated it downstream signal strength measured atthe modem. The label “Signal/Noise′, is assigned a value representingthe signal to noise ratio of received signal as measured at the modem.In an embodiment of the present invention, the acceptable range of thevalue associated with the label Transmit is between 35 and 55 dB, theacceptable range of the value of the label Receive is between −10 and+10 dB, and the acceptable range of the label Signal/Noise is above 25.In another embodiment of the present invention, if the any of thesevalues are out of range, the value fields are assigned a graphicalattribute that change the manner in which the values are displayed. Byway of illustration and not as a limitation, a value that is outside itsset range may be displayed with a red background.

Referring to FIG. 2B, interactive graphical display 200 is furtherillustrated. In an embodiment of the present invention, UPTIMEINFORMATION 240 comprises LVPs “Current Uptime,” and “PercentageOnline.” Whenever a modem boots up, the UBR keeps track of thedate/time. The label “Current Uptime” is assigned the value of theelapsed time since the modem was last booted. The label “PercentageOnline” is assigned a value indicative of the time the modem has beenonline and offline since the very first time it was connected to theUBR.

In an embodiment of the present invention, PORT SUMMARY 245 compriseLVPs “Port Summary,” “Percentage Online,” and “Port SNR.” The label“Port Summary” is assigned a value indicative of the number of modems online relative to the number of modems assigned to the particular port.The label “Percentage Online, is assigned a value expressing the portsummary value as a percent. The label “Port SNR” is assigned a valueindicative of the port signal-to-noise ratio.

If the modem comprises a wireless router, additional information ispresent. In an embodiment of the present invention, NAT Clients 260comprises LVPs “NAT IP Addresses,” “Connection” and “NIC MAC Address.”The label “NAT IP Addresses” is assigned values indicative of the publicIP addresses assigned by the DHCP server within the modem's wirelessrouter to CPE that has been connected to the router. The label“Connection” is assigned a value of either “wireless,” Ethernet, or“USB” depending on how the CPE interfaces with the router. The label“NIC MAC Addresses” is assigned the value of the network interface cardof the CPE that is connected to the router and assigned thecorresponding public IP address.

In an embodiment of the present invention, Subscriber Router Information265 comprises LVPs “NAT Status,” “Ethernet,” “Firmware,” SID,”“Channel,” WEP Status,” “USB,” and “Access Limits.” The label “NATStatus” is assigned a value that is either “enabled,” or null. The label“Ethernet” is assigned a value of “connected” or “disconnected”indicative of whether an Ethernet NIC is connected to the router. Thelabel “USB” is assigned a value of “connected” or “disconnected”indicative of whether an USB network interface is connected to therouter. The label “Firmware” is assigned the value of the currentfirmware used by the router. The label “SID” is assigned the value ofthe system identifier selected by the user. The label “Channel” isassigned the value of the channel that the wireless network is using.The label “WEP Status” is assigned a value of enable if a wiredencryption privacy key has been implemented by the user. The label“Access Limits” is assigned a value of enabled or disabled.

In an embodiment of the present invention, ACTION BLOCK 270 compriseslinked objects that when selected by a user initiate action appropriateto the object. As illustrated in FIG. 2C, ACTION BLOCK 270 comprises a“full” object 270A, a “selected” object 270B, a “quick” object 270C, a“clear” object 270D, a “save” object 270E, a “reset” object 270F, and a“modem history” object 270G. The full, selected, and quick objectsrelate to the content of the report that interactive graphical display200 will display. In an embodiment of the present invention, selectingthe full object 270A causes MQI 104 to request data values for all ofthe LVPs of interactive graphical display 200. Selecting the quickobject 270C causes MQI 104 to request data values for a predeterminedset of LVPs of interactive graphical display 200. In another embodimentof the present invention, data blocks 210, 215, 220, 225, 230, 235, 240,245, 260, and 265 may be selected by a user. Selecting the selectedobject 270B causes MQI 104 to request data values for the selected LVPsof interactive graphical display 200.

Referring again to ACTION BLOCK 270, selecting the reset object 270Fcauses a ‘reset’ command to be sent to the cable modem (see, FIG. 1,175) via SNMP.

Selecting the modem history object 270G causes the modem checker client(see, FIG. 1, 100) to display an historical view of the signal levels onthe modem. This historical view comprises the latest signal levelreadings, as well as the highest and lowest readings reported in thehistory. In an embodiment of the present invention, the modem checkerquery processor (see, FIG. 1, 142) runs a nightly scan of one seventh ofthe network. In the course of a week each modem is checked once.Additionally, the readings retrieved by modem checker query processor142 in response to queries from the MQI (see, FIG. 1, 104) are added tothese results. This is particularly useful in dealing with ongoingintermittent connection problems.

Selecting the save object 270E causes the selected settings to be savedas a custom settings file associated with the selected object 270B. Thenext time MQI 104 is initiated, the data blocks that were saved will bepre-selected.

Selecting the clear object 270D causes all data blocks to be displayedin an “unselected” state.

In an embodiment of the present invention, NETWORK REPORTS 275 compriseLVPs “Port Summary,” “Percentage Online,” and “Port SNR.” The label“Port Summary” is assigned a value indicative of the number of modems online relative to the number of modems assigned to the particular port.The label “Percentage Online” is assigned a value expressing the portsummary value as a percent. The label “Port SNR” is assigned a valueindicative of the port signal-to-noise ratio.

In an embodiment of the present invention, ANALYSIS RESULTS 280comprises the LVPs “Network Node Outages,” “Modem Report,” and“Suggested Actions.”

The diverse data acquired by the modem checker analysis system providesa “snapshot” of the state of a cable modem (see, FIG. 1, 175) andpermits a technician to diagnose the cause of a service problempotentially involving cable modem 175. By way of illustration and not asa limitation, referring again to FIG. 2, PUBLIC IP ADDRESSES block 212,the value of the label “Active” may exceed the value of the label“Available.” When there are more addresses Active than Available, itsuggests that the subscriber has attempted to get online with more thanone device. This can indicate that the subscriber is swapping betweencomputers, or between a computer and a router. The label “NIC MACAddress, has the value of the MAC Address of the adapter to which thepublic IP Address has been assigned. This can be useful fordifferentiating between multiple computers when troubleshooting.

FIG. 3 illustrates a flow of a process by which a modem checker clientis used to troubleshoot a modem according to an embodiment of thepresent invention.

Referring to FIG. 3, a user accesses a cable modem analysis server 300and receives an interactive graphical display comprising multiple LVPsand hyperlinked objects. The user enters a MAC address in a field of theinteractive graphical display 304. Data is acquired to evaluate the MACaddress that was entered 306. The cable modem query processor (see, FIG.1, 142) simultaneously launches a billing system query 315A and a CCSquery 315B. The billing system query is generated by reference to asubscriber query library (see, FIG. 1, 144) that comprises data requestscripts constructed to obtain particular data elements from the billingsystem datastore 320. Similarly, the CCS query is generated by referenceto a CCS query library (see, FIG. 1, 146) that comprises data requestscripts constructed to obtain particular data elements from the CCSdatastore 325. The queries return data that is used to evaluate thecable modem MAC. By way of illustration and not as a limitation, thebilling system query returns a subscriber account number and informationas to whether the subscriber is entitled to receive service. The CCSquery confirms whether the cable modem associated with the cable modemMAC address is “known” to the network.

A determination is made whether the cable modem MAC address is valid310. If the MAC address in not valid, the user is prompted again toenter a MAC address 304. If the MAC address is valid, then the cablemodem status is determined 328. A DNS query is issued 315B for data inthe CCS datastore 325 relating to whether the cable modem is enabled 330and if the cable modem is online 335. If the cable modem is not enabledand/or the cable modem is not online, the account information associatedwith the cable modem and status of the cable modem are captured 337 andpassed to a result analyzer (see, FIG. 1, 152) where the results areanalyzed 350. Data is parsed 360 to so as to associate a value with alabel to produce an interactive graphical display (see, FIG. 2) andreturned to user for display.

If the cable modem is determined to be enabled and online, communicationwith the cable modem is initiated 340. In an embodiment of the presentinvention, this communication is accomplished by issuing an SNMP 345query of the cable modem. The SNMP query is generated by reference to aSNMP query library (see, FIG. 1, 148) that comprises data requestscripts constructed to obtain particular data elements from the cablemodem that are available through SNMP.

The results of the SNMP query, along with account information associatedwith the cable modem and status of the cable modem are passed to aresult analyzer (see, FIG. 1, 152) where the results are analyzed 350.Data is parsed 360 to so as to associate a value with a label to producean interactive graphical display (see, FIG. 2) and returned to user fordisplay.

One of the benefits of using the modem checker client of the presentinvention is that it establishes a standardized troubleshootingmethodology by insuring that each technical service representative hasthe same information in the same format available to diagnose issues.This allows for directed training at issues and resolutions which wasnot possible before.

A cable modem analysis system and method therefore for an HFC cablenetwork have been described. It will be understood by those skilled inthe art that the present invention may be embodied in other specificforms without departing from the scope of the invention disclosed andthat the examples and embodiments described herein are in all respectsillustrative and not restrictive. Those skilled in the art of thepresent invention will recognize that other embodiments using theconcepts described herein are also possible. Further, any reference toclaim elements in the singular, for example, using the articles “a,”“an,” or “the” is not to be construed as limiting the element to thesingular. Moreover, a reference to a specific time, time interval, andinstantiation of scripts or code segments is in all respectsillustrative and not limiting.

1. A cable modem (CM) analysis server for a hybrid-fiber-coax (HFC)cable network comprising: a simple network management protocol (SNMP)query library, wherein the query library comprises instructions foracquiring and reporting CM state data elements responsive to an SNMPquery and indicative of a state of a CM from the CM; a subscriber querylibrary, wherein the subscriber query library comprises instructions foracquiring and reporting subscriber information from a billing datastorein response to a subscriber query, wherein the subscriber informationcomprises a subscriber account number; a central control system (CCS)query library, wherein the CCS library comprises instructions fordetermining and reporting in response to a CSS query whether a CM MACaddress is known to the network; a query checker processor, wherein thequery checker processor comprises instructions that configure the querychecker processor to perform operations comprising: generating aninteractive graphical display that accepts a client query from a CMchecker client, wherein the interactive graphical display comprises aMAC address field and wherein the client query identifies queried CMstate data elements to be obtained for the CM; receiving a MAC addressassociated with a CM that is entered into the MAC address field; sendingthe subscriber query and the CCS query; determining from a response tothe subscriber query and the CCS query whether the entered MAC addressis valid; when the entered MAC address is valid, then generating andsending a DNS query for status data in a CCS datastore, wherein thestatus data are indicative of whether the CM associated with the enteredMAC address is enabled and online; and when the entered MAC address isentered and online, then generating and sending the SNMP query for CMstate data elements of the CM associated with the entered MAC addressand responsive to the SNMP query, wherein the SNMP query is generated byreference to the queried CM state data elements and the SNMP querylibrary; and sending the subscriber information, the CM state dataelements responsive to the SNMP query, and the status data to a resultsanalyzer; the results analyzer, wherein the results analyzer comprisesinstructions that configure the results analyzer to perform theoperations comprising: receiving the subscriber information, the CMstate data elements responsive to the SNMP query, and the status data;determining whether a CM state data element is within a predeterminedrange; assigning a first graphical attribute to each CM state dataelement that is outside a predetermined range; and sending thesubscriber information, the CM state data elements responsive to theSNMP query, and the first graphical attribute to a display server; andthe display server, wherein the display server comprises instructionsthat configure the display server to perform operations comprising:receiving the subscriber information, the CM state data elementsresponsive to the SNMP query, the status data and the first graphicalattribute; creating a CM analytical record from the subscriberinformation, the CM state data elements responsive to the SNMP query,the status data and the first graphical attribute; and sending the CManalytical record to the CM checker client for display.
 2. The CManalysis server of claim 1, wherein the modem checker client comprises aWeb browser and wherein the CM analytical record comprises a Web page.3. The CM analysis server of claim 1, wherein CM state data elements areselected from the group consisting of subscriber data, CM operationaldata, network component data, and CM diagnostic data.
 4. The CM analysisserver of claim 3, wherein the subscriber data comprise a subscribername, a subscriber address, an account number associated with thesubscriber name, the MAC address of the CM, and the subscriber accountstatus.
 5. The CM analysis server of claim 3, wherein the CM operationaldata comprise a CM current status, a private network address assigned tothe CM, a modem type, available IP addresses, active IP addresses, apublic IP address, a type, a NIC MAC, a status in LDAP, a provisionedBIN FILE, and a hosting ISP.
 6. The CM analysis server of claim 5,wherein the CM comprises a wireless router and wherein the CMoperational data further comprise network address translation (NAT)client data, NAT status, Ethernet connection status, router firmwareidentifier, wireless system identifier, transmission channel, wiredequivalency privacy status, and access limits.
 7. The CM analysis serverof claim 3, wherein the network component data comprise a network routeridentifier, a network port identifier, the firmware of the router, aport summary, a port percentage online, a port SNR.
 8. The CM analysisserver of claim 3, wherein the CM diagnostic data comprise an uptimemeasure, a transmit signal level, a receive signal level, and a modemSNR.
 9. The CM analysis server of claim 1, wherein the results analyzerfurther comprises instructions that configure the results analyzer toperform operations comprising: assigning a second graphical attribute tothe CM state data element if the CM state data element is within thepredetermined range; and providing the CM state data element and theassigned second graphical attribute to the display server, wherein thedisplay server further comprises instructions that configure the displayserver to perform operations comprising using the CM state data elementand the assigned second graphical attribute to create the analyticalrecord.
 10. The CM analysis server of claim 9, wherein the first andsecond graphical attributes are display colors.
 11. The CM analysisserver of claim 1, wherein the results analyzer further comprisesinstructions that configure the results analyzer to perform operationscomprising: selecting CM state elements determined to be outside apredetermined range; determining if the selected CM state elements areindicative of a common fault; and if the selected CM state elements areindicative of a common fault, identifying the common fault in theanalytical record.
 12. The CM analysis server of claim 1 furthercomprising a client network interface configured for communicating withthe CM checker client via a client network.
 13. The CM analysis serverof claim 12, wherein the client network is selected from the groupconsisting of a wired network, a wireless network, a local area network,and the Internet.
 14. The CM analysis server of claim 1 furthercomprising a cable network interface configured for commandcommunicating with the CM via a cable network path.
 15. The CM analysisserver of claim 14, wherein the path in the cable network path is aDOCSIS-compliant channel.
 16. A method for evaluating the operationalstatus of cable modems (CMs) connected to a hybrid-fiber-coax (HFC)cable network comprising: generating at a query checker processor aninteractive graphical display that accepts a client query from a CMchecker client, wherein the interactive graphical display comprises aMAC address field and wherein the client query identifies queried CMstate data elements to be obtained for the CM; receiving a MAC addressassociated with the CM that is entered into the MAC address field;generating the subscriber query using a subscriber query library,wherein the subscriber query library comprises instructions forinclusion in the subscriber query for acquiring and reporting subscriberinformation from a billing datastore; generating the CCS query using aCCS query library, wherein the CCS query library comprises instructionsfor inclusion in the CCS query for determining and reporting whether aCM MAC address is known to the network and instructions for inclusion ina DNS query for determining and reporting in response to the DNS querywhether the CM is enabled and online; sending the subscriber query andthe CCS query: determining from a response to the CCS query whether theentered MAC address is valid; when the entered MAC address is valid,then generating and sending the DNS query for status data in a CCSdatastore; determining from the status data whether the CM associatedwith the entered MAC address is enabled and online; and when the enteredMAC address is enabled and online, then generating and sending a simplenetwork management protocol (SNMP) query for CM state data elements ofthe CM associated with the entered MAC address and responsive to theSNMP query, wherein the SNMP query is generated by reference to thequeried CM state data elements and an SNMP query library, and whereinthe SNMP query library comprises instructions for inclusion in the SNMPquery for acquiring and reporting CM state data elements indicative of astate of a CM from the CM; and sending the subscriber information, theCM state data elements responsive to the SNMP query, the CM state dataelements responsive to the CLI query, and the status data to a resultsanalyzer; receiving the subscriber information, the CM state dataelements responsive to the SNMP query, the CM state data elementsresponsive to the CLI query, and the status data at the resultsanalyzer; determining at the results analyzer whether a CM state dataelement is within a predetermined range; assigning a first graphicalattribute to each CM state data elements that is outside thepredetermined range; sending the subscriber information, the CM statedata elements responsive to the SNMP query, the CM state data elementsresponsive to the CLI query, the status data, and the first graphicalattribute to a display server; receiving the subscriber information, theCM state data elements responsive to the SNMP query, the CM state dataelements responsive to the CLI query, the status data and the firstgraphical attribute at the display server; creating a CM analyticalrecord from the subscriber information, the CM state data elementsresponsive to the SNMP query, the CM state data elements responsive tothe CLI query, the status data and the first graphical attribute; andsending the CM analytical record to the CM checker client for display.17. The method of claim 16, wherein the modem checker client comprises aWeb browser and wherein the CM analytical record comprises a Web page.18. The method of claim 16, wherein the CM state data elements areselected from the group consisting of subscriber data, CM operationaldata, network component data, and CM diagnostic data.
 19. The method ofclaim 18, wherein the subscriber data comprise a subscriber name, asubscriber address, an account number associated with the subscribername, a MAC address of the CM, and a subscriber account status.
 20. Themethod of claim 18, wherein the CM operational data comprise a CMcurrent status, a private network address assigned to the CM, a modemtype, available IP addresses, active IP addresses, a public IP address,a type, a NIC MAC, a status in LDAP, a provisioned BIN file, and ahosting ISP.
 21. The method of claim 20, wherein the CM comprise awireless router and wherein the CM operational data further comprisenetwork address translation (NAT) client data, NAT status, Ethernetconnection status, router firmware identifier, wireless systemidentifier, transmission channel, wired equivalency privacy status, andaccess limits.
 22. The method of claim 18, wherein the network componentdata comprise a network router identifier, a network port identifier,the firmware of the router, a port summary, a port percentage online, aport SNR; and wherein the CM diagnostic data comprise an uptime measure,a transmit signal level, a receive signal level, a modem SNR.
 23. Themethod of claim 18, wherein the CM diagnostic data comprise an uptimemeasure, a transmit signal level, a receive signal level, and a modemSNR.
 24. The method of claim 16 further comprising: assigning a secondgraphical attribute to the CM state data element if the CM state dataelement is within the predetermined range; providing the CM state dataelement and assigned second graphical attribute to the display server;and creating the analytical record using the CM state data element andthe assigned second graphical attribute.
 25. The method of claim 16,wherein the first and second graphical attributes are display colors.26. The method of claim 16 further comprising: selecting CM stateelements determined to be outside a predetermined range; determining ifthe selected CM state elements are indicative of a common fault; andidentifying the common fault in the CM analytical record if the selectedCM state elements are indicative of a common fault.
 27. The method ofclaim 16, wherein executing the query instructions to obtain the queriedCM state data elements comprises communicating with the CM via a cablenetwork path.
 28. The method of claim 27, wherein the cable network pathis a DOCSIS-compliant channel.
 29. The method of claim 16, whereinreceiving a query from a modem checker client comprises receiving thequery from the CM checker client via a client network.
 30. The method ofclaim 29, wherein the client network is selected from the groupconsisting of a wired network, a wireless network, a local area network,and the Internet.